package com.pur.zsms.systemsetting.datadictionary.service;

import java.util.List;

import com.pur.zsms.common.exception.GenericException;
import com.pur.zsms.common.support.PageController;
import com.pur.zsms.common.support.PaginationSupport;
import com.pur.zsms.systemsetting.datadictionary.po.Code;
import com.pur.zsms.systemsetting.datadictionary.po.CodeType;
import com.pur.zsms.systemsetting.datadictionary.vo.CodeVo;

/**
 * 
 * @author 李玉新
 * 
 */
public interface IDataDictionaryService {

	public PaginationSupport findCode(PageController pageController, CodeVo codevo, String codeTypeId) throws GenericException;

	/**
	 * 查询所有编码类型
	 * 
	 * @return
	 * @throws GenericException
	 */
	public List<CodeType> findAllCodeType() throws GenericException;

	/**
	 * 根据id查寻代码类型
	 * 
	 * @param codeTypeId
	 * @return
	 */
	public List<CodeType> findById(long codeTypeId) throws GenericException;

	/**
	 * 保存代码类型
	 */
	public void addCodetype(CodeType c) throws GenericException;

	/**
	 * 保存代码
	 */
	public void addCode(Code c) throws GenericException;

	/**
	 * 删除代码类型
	 */
	public void deleteCode(String phCodeId) throws GenericException;

	/**
	 * 获取编码名称
	 * 
	 * @param codeVo
	 */
	public String findCodeName(CodeVo codeVo);

	/**
	 * 获取种类
	 */
	public String getMaterType() throws GenericException;

	public String getCodeJsonByCodeType(String codetype) throws GenericException;

	public String getTurnoverType() throws GenericException;

	public String getCostType() throws GenericException;

	public String pullDownList(String codeType, String codeId, String codeName) throws GenericException;

	public String pullDownListDiy(String codeType, String codeId, String codeName, String a) throws GenericException;

	public String getMaterTypeName(int materType) throws GenericException;

	public List<Code> getCodeList(String codeType) throws GenericException;

}
